#include <dlfcn.h>
#include <stddef.h>
#include <stdio.h>

void intercept(char *symbol, size_t symbol_len) {
    char *str;

    /* Stored in read only part of data segment */
    str = "GfG";

    /* Problem: trying to modify read only memory */
    *(str+1) = 'n';

    symbol = NULL; // will cause SIGSEGV
    printf("%s\n", symbol);
    fflush(stdout);
}